In SAS® Merchandise Allocation, an IPC_CONNECTION_BROKEN and IPC_CORRUPTED_DATA exception might be generated with exception details similar to the following in the log:
You can open the worksheet in read-only mode or ask a user with administrator privileges to reset the worksheet so you can edit it. Do you want to open the worksheet in read-only mode?" systemMessage="" level="4" /> Sending information to client: <Error code="2" userMessage="This worksheet was opened by PMartin on 08/18/2015. The XML string is as follows: <ServerRequest> <Request name="CancelOpen" /> </ServerRequest> CANCEL command SOL for readCubeKey is :SELECT lock_id from maxdata.MMAX_LOCKS where CUBE_KEY = 'bc71d58b-5a4d-4125-b0fb-47c1491ff5bc' AND lock_level = 94 AND lock_type = 'AL_OPEN' Executing SQLSELECT lock_id from maxdata.MMAX_LOCKS where CUBE_KEY = 'bc71d58b-5a4d-4125-b0fb-47c1491ff5bc' AND lock_level = 94 AND lock_type = 'AL_OPEN' com.sas.retail.merchplan.ipc.error.IPCConnectionBrokenException: remote socket closed connection at com.sas.retail.merchplan.ipc.connection.Connection.receive(Connection.java:109) at com.sas.retail.merchplan.ipc.wireproto.Header.receive(Header.java:85) at com.sas.retail.merchplan.ipc.connection.Connection.receive(Connection.java:85) at com.sas.retail.merchplan.ipc.status_monitor.StatusMonitor.run(StatusMonitor.java:115) at java.lang.Thread.run(Thread.java:745) <Error code="IPC_CORRUPTED_DATA" userMessage="The data received from the cube was corrupted." systemMessage="protocol reading error: null" level="4" /> at com.marketmax.Interface.me.adapter.LocalDPEAdapter.handleIPCException(Unknown Source) at com.marketmax.Interface.me.adapter.LocalDPEAdapter.processRequest(Unknown Source) at com.marketmax.Interface.me.command.ProcessRequestCommand.process(Unknown Source) at com.marketmax.Interface.me.command.AbstractMECommand.execute(Unknown Source) at com.marketmax.Interface.me.MMXMEInterfaceManager.processRequest(Unknown Source) at com.marketmax.Interface.servlet.MMXWorksheetInterfaceServlet.callPE(Unknown Source) at com.marketmax.Interface.servlet.MMXWorksheetInterfaceServlet.doGet(Unknown Source) | at com.marketmax.Interface.servlet.MMXWorksheetInterfaceServlet.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at com.marketmax.framework.coe.web.RequestFilter.doFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at com.marketmax.util.XSSFilter.doFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Execute command error:Sending information to client:
An IPC_CONNECTION_BROKEN error occurs after you select Cancel when a read-only allocation worksheet is opening. The exception is also generated in any active allocation worksheet when you click on anything in the worksheet. If you select OK after the IPC_CONNECTION_BROKEN error occurs, then an IPC_CORRUPTED_DATA error occurs. The IPC_CORRUPTED_DATA error persists until you close and then re-open the worksheet.
The workaround for this issue is to select Yes or No instead of Cancel when the read-only worksheet is opening.
Product Family | Product | System | Product Release | SAS Release | ||
Reported | Fixed* | Reported | Fixed* | |||
SAS System | SAS Merchandise Allocation | Microsoft Windows Server 2008 R2 | 3.5_M1 | 3.5_M1 | 9.4 TS1M2 | 9.4 TS1M2 |
64-bit Enabled AIX | 3.5_M1 | 3.5_M1 | 9.4 TS1M2 | 9.4 TS1M2 | ||
Linux for x64 | 3.5_M1 | 3.5_M1 | 9.4 TS1M2 | 9.4 TS1M2 |
Type: | Problem Note |
Priority: | high |
Date Modified: | 2015-10-21 12:01:52 |
Date Created: | 2015-07-23 13:56:49 |